package com.vcms.cms.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * ModelItem entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "model_item", catalog = "vcms_0.1")
public class ModelItem implements java.io.Serializable {

	// Fields

	private Integer modelItemId;
	private Model model;
	private String field;
	private String modelLabel;
	private Integer priority;
	private String defValue;
	private String optValue;
	private Integer textSize;
	private Integer areaRows;
	private Integer areaCols;
	private String help;
	private String helpPosition;
	private Integer dataType;
	private Boolean isSingle;
	private Boolean isChannel;
	private Boolean isCustom;
	private Boolean isDisplay;

	// Constructors

	/** default constructor */
	public ModelItem() {
	}

	/** full constructor */
	public ModelItem(Model model, String field, String modelLabel,
			Integer priority, String defValue, String optValue,
			Integer textSize, Integer areaRows, Integer areaCols, String help,
			String helpPosition, Integer dataType, Boolean isSingle,
			Boolean isChannel, Boolean isCustom, Boolean isDisplay) {
		this.model = model;
		this.field = field;
		this.modelLabel = modelLabel;
		this.priority = priority;
		this.defValue = defValue;
		this.optValue = optValue;
		this.textSize = textSize;
		this.areaRows = areaRows;
		this.areaCols = areaCols;
		this.help = help;
		this.helpPosition = helpPosition;
		this.dataType = dataType;
		this.isSingle = isSingle;
		this.isChannel = isChannel;
		this.isCustom = isCustom;
		this.isDisplay = isDisplay;
	}

	// Property accessors
	@Id
	@GeneratedValue
	@Column(name = "modelItemId", unique = true, nullable = false)
	public Integer getModelItemId() {
		return this.modelItemId;
	}

	public void setModelItemId(Integer modelItemId) {
		this.modelItemId = modelItemId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "modelId")
	public Model getModel() {
		return this.model;
	}

	public void setModel(Model model) {
		this.model = model;
	}

	@Column(name = "field", length = 100)
	public String getField() {
		return this.field;
	}

	public void setField(String field) {
		this.field = field;
	}

	@Column(name = "modelLabel", length = 300)
	public String getModelLabel() {
		return this.modelLabel;
	}

	public void setModelLabel(String modelLabel) {
		this.modelLabel = modelLabel;
	}

	@Column(name = "priority")
	public Integer getPriority() {
		return this.priority;
	}

	public void setPriority(Integer priority) {
		this.priority = priority;
	}

	@Column(name = "defValue", length = 300)
	public String getDefValue() {
		return this.defValue;
	}

	public void setDefValue(String defValue) {
		this.defValue = defValue;
	}

	@Column(name = "optValue", length = 300)
	public String getOptValue() {
		return this.optValue;
	}

	public void setOptValue(String optValue) {
		this.optValue = optValue;
	}

	@Column(name = "textSize")
	public Integer getTextSize() {
		return this.textSize;
	}

	public void setTextSize(Integer textSize) {
		this.textSize = textSize;
	}

	@Column(name = "areaRows")
	public Integer getAreaRows() {
		return this.areaRows;
	}

	public void setAreaRows(Integer areaRows) {
		this.areaRows = areaRows;
	}

	@Column(name = "areaCols")
	public Integer getAreaCols() {
		return this.areaCols;
	}

	public void setAreaCols(Integer areaCols) {
		this.areaCols = areaCols;
	}

	@Column(name = "help", length = 300)
	public String getHelp() {
		return this.help;
	}

	public void setHelp(String help) {
		this.help = help;
	}

	@Column(name = "helpPosition", length = 100)
	public String getHelpPosition() {
		return this.helpPosition;
	}

	public void setHelpPosition(String helpPosition) {
		this.helpPosition = helpPosition;
	}

	@Column(name = "dataType")
	public Integer getDataType() {
		return this.dataType;
	}

	public void setDataType(Integer dataType) {
		this.dataType = dataType;
	}

	@Column(name = "isSingle")
	public Boolean getIsSingle() {
		return this.isSingle;
	}

	public void setIsSingle(Boolean isSingle) {
		this.isSingle = isSingle;
	}

	@Column(name = "isChannel")
	public Boolean getIsChannel() {
		return this.isChannel;
	}

	public void setIsChannel(Boolean isChannel) {
		this.isChannel = isChannel;
	}

	@Column(name = "isCustom")
	public Boolean getIsCustom() {
		return this.isCustom;
	}

	public void setIsCustom(Boolean isCustom) {
		this.isCustom = isCustom;
	}

	@Column(name = "isDisplay")
	public Boolean getIsDisplay() {
		return this.isDisplay;
	}

	public void setIsDisplay(Boolean isDisplay) {
		this.isDisplay = isDisplay;
	}

}